﻿using WebPic.Sample.Comum;
using WebPic.Sample.Modelo.Entidades;
using WebPic.Sample.Modelo.Servicos.Interfaces;

namespace WebPic.Sample.Modelo.Servicos 
{
    public class ServicePessoaContato : IServicePessoaContato 
    {
        private readonly IValidationDictionary _modelState;
        private readonly IUnitOfWork _unitOfWork;
        
        public ServicePessoaContato(IValidationDictionary modelState, IUnitOfWork unitOfWork)
        {
            _modelState = modelState;
            _unitOfWork = unitOfWork;
        }
        
        public bool Add(PessoaContato pessoaContato) 
        {
            _unitOfWork.PessoaContato.Add(pessoaContato);
            return true;
        }

        public bool Update(PessoaContato pessoaContato) 
        {
            _unitOfWork.PessoaContato.Update(pessoaContato);
            return true;
        }

        public bool Remove(PessoaContato pessoaContato)
        {
            if(_modelState.IsValid)
            {
                _unitOfWork.PessoaContato.Remove(pessoaContato);
            }

            return _modelState.IsValid;
        }
    }
}
